package com.canxi.earn.service;

import com.canxi.earn.domain.CxFuns;
import com.canxi.earn.domain.vo.CxFunsVo;
import com.canxi.earn.domain.bo.CxFunsBo;
import com.canxi.common.core.page.TableDataInfo;
import com.canxi.common.core.domain.PageQuery;
import icu.mhb.mybatisplus.plugln.base.service.JoinIService;

import java.util.Collection;
import java.util.List;
import java.util.Map;


/**
 * 功能列Service接口
 *
 * @author ruoyi
 * @date 2024-09-04
 */
public interface ICxFunsService  extends JoinIService<CxFuns> {


    /**
     * @description: TODO 分页查询功能列列表
     * @author: ruoyi
     * @date: 2024-09-04
     * @param:
     * @param: cxFunsVo 功能列
     * @return:
     * @return TableDataInfo<CxFunsVo>
     **/
    public TableDataInfo<CxFunsVo> queryCxFunsList(CxFunsBo cxFunsBo);

    /**
     * @description: TODO 查询全部功能列列表
     * @author: ruoyi
     * @date: 2024-09-04
     * @param:
     * @param: cxFunsVo 功能列
     * @return:
     * @return java.util.List<CxFunsVo>
     **/
    public List<CxFunsVo> queryCxFunsAll(CxFunsBo cxFunsBo);



    /**
     * 查询功能列
     */
    CxFunsVo queryById(String id);


    /**
     * 查询功能列列表
     */
    List<CxFunsVo> queryList(CxFunsBo bo);

    /**
     * 新增功能列
     */
    Boolean insertByBo(CxFunsBo bo);

    /**
     * 修改功能列
     */
    Boolean updateByBo(CxFunsBo bo);

    /**
     * 校验并批量删除功能列信息
     */
    Boolean deleteWithValidByIds(Collection<String> ids, Boolean isValid);


    /**
     * 获取App端功能列表
     * @param cxFunsBo
     * @return
     */
    public Map<String,List<CxFunsVo>> queryAppCxFunsAll(CxFunsBo cxFunsBo);

}
